
#ifndef MAILBOX_H_
#define MAILBOX_H_

#include <vector>
#include "Message.h"

class Mailbox {
public:
	Mailbox(int buffer_size);
	virtual ~Mailbox();
	void put_message(Message* message);
	Message* get_next_message();
	bool is_empty();
	bool is_full();
    void setBuffer_size(int _buffer_size)
    {
        this->_buffer_size = _buffer_size;
    }
    int get_number_of_pending_messages();
    void print();

private:
	vector<Message*>*	_buffer;
	int					_buffer_size;
};

#endif /* MAILBOX_H_ */
